import request from '@/utils/request'

/**
 * 工序相关API
 */
export const operationApi = {
  /**
   * 根据工艺获取工序列表（通过工艺编码）
   * @param {Object} params - 查询参数
   * @param {String} params.craftCode - 工艺编码（必需）
   * @param {String} params.operationCode - 工序编码（可选）
   * @param {String} params.operationName - 工序名称（可选）
   * @returns {Promise}
   */
  queryOperationByCraft(params) {
    return request({
      url: '/operation/query-operation-by-craft',
      method: 'get',
      params
    })
  },

  /**
   * 根据工艺ID获取工序列表
   * @param {Object} params - 查询参数
   * @param {String} params.craftId - 工艺ID（必需）
   * @returns {Promise}
   */
  queryOperationByCraftId(params) {
    return request({
      url: '/operation/query-operation-by-craft',
      method: 'get',
      params
    })
  },

  /**
   * 创建工序
   * @param {Object} data - 工序数据
   * @param {String} data.operationCode - 工序编码（必需）
   * @param {String} data.operationName - 工序名称
   * @param {String} data.craftCode - 工艺编码
   * @returns {Promise}
   */
  createOperation(data) {
    return request({
      url: '/operation/create',
      method: 'post',
      data
    })
  },

  /**
   * 更新工序
   * @param {Object} data - 工序数据
   * @param {String} data.id - 工序ID（必需）
   * @returns {Promise}
   */
  updateOperation(data) {
    return request({
      url: '/operation/modify',
      method: 'post',
      data
    })
  },

  /**
   * 删除工序
   * @param {String} id - 工序ID
   * @returns {Promise}
   */
  deleteOperation(id) {
    return request({
      url: `/operation/del/${id}`,
      method: 'get'
    })
  }
}
